
package com.intretech.umsin.system.vo;

import java.io.Serializable;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import com.alibaba.excel.annotation.ExcelIgnoreUnannotated;
import com.alibaba.excel.annotation.ExcelProperty;
import com.fasterxml.jackson.annotation.JsonFormat;
import com.fasterxml.jackson.databind.annotation.JsonDeserialize;
import com.fasterxml.jackson.databind.annotation.JsonSerialize;
import com.fasterxml.jackson.datatype.jsr310.deser.LocalDateTimeDeserializer;
import com.fasterxml.jackson.datatype.jsr310.ser.LocalDateTimeSerializer;
import com.intretech.umsin.common.entity.Assignment;
import com.intretech.umsin.common.excel.converter.LocalDateTimeConverter;

/**
* @version V1.0
* 角色和菜单关联:sys_role_menu 对应的VO模型类.
* @ClassName: SysRoleMenuVo
* @Description: 角色和菜单关联:sys_role_menu 对应的VO模型类.
* @author: 李启联
* @date:   2022-8-16 16:25:08
* @Copyright: Copyright (c) 2022
*/
@ApiModel("角色和菜单关联")
@ExcelIgnoreUnannotated
public class SysRoleMenuVo implements Assignment, Serializable {

    // ID
    @ApiModelProperty(value = "ID" ,dataType="bigint(19)" ,required= true)
    @ExcelProperty(value = "ID")
    private Long id;

    // 角色ID
    @ApiModelProperty(value = "角色ID" ,dataType="bigint(19)" ,required= true)
    @ExcelProperty(value = "角色ID")
    private Long roleId;

    // 菜单ID
    @ApiModelProperty(value = "菜单ID" ,dataType="bigint(19)" ,required= true)
    @ExcelProperty(value = "菜单ID")
    private Long menuId;

    // 版本号
    @ApiModelProperty(value = "版本号" ,dataType="int(10)" ,required= false)
    @ExcelProperty(value = "版本号")
    private Integer version;

    // 租户ID
    @ApiModelProperty(value = "租户ID" ,dataType="varchar(128)" ,required= false)
    @ExcelProperty(value = "租户ID")
    private String tenantId;

    // 创建人
    @ApiModelProperty(value = "创建人" ,dataType="varchar(64)" ,required= false)
    @ExcelProperty(value = "创建人")
    private String creator;

    // 修改人
    @ApiModelProperty(value = "修改人" ,dataType="varchar(64)" ,required= false)
    @ExcelProperty(value = "修改人")
    private String updater;

    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss",timezone = "GMT+8")
    @ApiModelProperty(value = "创建时间" ,dataType="datetime()" ,required= false)
    @ExcelProperty(value = "创建时间",converter = LocalDateTimeConverter.class)
    private java.time.LocalDateTime createDate;

    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss",timezone = "GMT+8")
    @ApiModelProperty(value = "修改时间" ,dataType="datetime()" ,required= false)
    @ExcelProperty(value = "修改时间",converter = LocalDateTimeConverter.class)
    private java.time.LocalDateTime updateDate;

    public Long getId(){
    return this.id;
    }

    public void setId(Long id){
    this.id = id;
    }
    public Long getRoleId(){
    return this.roleId;
    }

    public void setRoleId(Long roleId){
    this.roleId = roleId;
    }
    public Long getMenuId(){
    return this.menuId;
    }

    public void setMenuId(Long menuId){
    this.menuId = menuId;
    }
    public Integer getVersion(){
    return this.version;
    }

    public void setVersion(Integer version){
    this.version = version;
    }
    public String getTenantId(){
    return this.tenantId;
    }

    public void setTenantId(String tenantId){
    this.tenantId = tenantId;
    }
    public String getCreator(){
    return this.creator;
    }

    public void setCreator(String creator){
    this.creator = creator;
    }
    public String getUpdater(){
    return this.updater;
    }

    public void setUpdater(String updater){
    this.updater = updater;
    }
    public java.time.LocalDateTime getCreateDate(){
    return this.createDate;
    }

    public void setCreateDate(java.time.LocalDateTime createDate){
    this.createDate = createDate;
    }
    public java.time.LocalDateTime getUpdateDate(){
    return this.updateDate;
    }

    public void setUpdateDate(java.time.LocalDateTime updateDate){
    this.updateDate = updateDate;
    }

    public SysRoleMenuVo(){
    }

    @Override
    public String toString(){
        return " SysRoleMenuVo ["
             +" id = " +id +" ,"
             +" roleId = " +roleId +" ,"
             +" menuId = " +menuId +" ,"
             +" version = " +version +" ,"
             +" tenantId = " +tenantId +" ,"
             +" creator = " +creator +" ,"
             +" updater = " +updater +" ,"
             +" createDate = " +createDate +" ,"
             +" updateDate = " +updateDate
        +" ]";
    }

}